I figured it out. I needed to set my QObject and QCore stuff properly. In the .pro file of the shared library, I added:
QT += core
In the shared library's .h file, I switched this:
class CTSCANSHARED_EXPORT ctScan
{
public:
...blah blah...
with this:
class CTSCANSHARED_EXPORT ctScan: public QObject
{
Q_OBJECT
public:
...blah blah...
And then ensured the shared library's .h file had this:
#include <QObject>
And then it compiled properly.